A variety of user interfaces having multiple windows are well known. However, many conventional multi-window user interfaces are not user-configurable. Moreover, even those conventional multi-window user interfaces that are user-configurable typically require frequent direct manipulation of windows to effectively configure the user interface. Consequently such conventional user interfaces either make inefficient use of screen space by displaying windows that are not needed by the user or cause the user to be less efficient by requiring the user to spend substantial amounts of time reconfiguring the windows in the user interface.